import 'dart:convert';
import 'package:flutter_app/generated/json/base/json_field.dart';
import 'package:flutter_app/generated/json/task_detail_entity.g.dart';

@JsonSerializable()
class TaskDetailEntity {

	String? taskId;
	String? groupId;
	String? taskTitle;
	String? startTime;
	String? endTime;
	String? taskStatus;
	String? collectId;
	String? areaId;
	String? isLimit;
	String? writeAuth;
	TaskDetailCollectGroupVO? collectGroupVO;
	String? memberStatus;
	String? memberRole;
	int? problemCount;
	List<TaskDetailOrgProblemList>? orgProblemList;
  
  TaskDetailEntity();

  factory TaskDetailEntity.fromJson(Map<String, dynamic> json) => $TaskDetailEntityFromJson(json);

  Map<String, dynamic> toJson() => $TaskDetailEntityToJson(this);

  @override
  String toString() {
    return jsonEncode(this);
  }
}

@JsonSerializable()
class TaskDetailCollectGroupVO {

	String? id;
	String? collectId;
	String? areaId;
	String? areaName;
	String? groupName;
	String? status;
	String? grade;
	String? problemCount;
	List<TaskDetailCollectGroupVOGroupMemberVOList>? groupMemberVOList;
	TaskDetailCollectGroupVORouteVO? routeVO;
  
  TaskDetailCollectGroupVO();

  factory TaskDetailCollectGroupVO.fromJson(Map<String, dynamic> json) => $TaskDetailCollectGroupVOFromJson(json);

  Map<String, dynamic> toJson() => $TaskDetailCollectGroupVOToJson(this);

  @override
  String toString() {
    return jsonEncode(this);
  }
}

@JsonSerializable()
class TaskDetailCollectGroupVOGroupMemberVOList {

	String? userId;
	String? userName;
	String? memberRole;
	String? writeAuth;
	String? collectId;
	String? groupId;
	String? status;
	dynamic updateTime;
	dynamic hm;
	dynamic userIdList;
  
  TaskDetailCollectGroupVOGroupMemberVOList();

  factory TaskDetailCollectGroupVOGroupMemberVOList.fromJson(Map<String, dynamic> json) => $TaskDetailCollectGroupVOGroupMemberVOListFromJson(json);

  Map<String, dynamic> toJson() => $TaskDetailCollectGroupVOGroupMemberVOListToJson(this);

  @override
  String toString() {
    return jsonEncode(this);
  }
}

@JsonSerializable()
class TaskDetailCollectGroupVORouteVO {

	String? id;
	String? collectId;
	String? areaName;
	dynamic orderBy;
	List<TaskDetailCollectGroupVORouteVOOrganVOList>? organVOList;
  
  TaskDetailCollectGroupVORouteVO();

  factory TaskDetailCollectGroupVORouteVO.fromJson(Map<String, dynamic> json) => $TaskDetailCollectGroupVORouteVOFromJson(json);

  Map<String, dynamic> toJson() => $TaskDetailCollectGroupVORouteVOToJson(this);

  @override
  String toString() {
    return jsonEncode(this);
  }
}

@JsonSerializable()
class TaskDetailCollectGroupVORouteVOOrganVOList {

	String? id;
	String? collectId;
	String? areaId;
	String? orgId;
	String? orgName;
	dynamic orderBy;
	String? type;
	dynamic areaOrganList;
  
  TaskDetailCollectGroupVORouteVOOrganVOList();

  factory TaskDetailCollectGroupVORouteVOOrganVOList.fromJson(Map<String, dynamic> json) => $TaskDetailCollectGroupVORouteVOOrganVOListFromJson(json);

  Map<String, dynamic> toJson() => $TaskDetailCollectGroupVORouteVOOrganVOListToJson(this);

  @override
  String toString() {
    return jsonEncode(this);
  }
}

@JsonSerializable()
class TaskDetailOrgProblemList {

	String? orgId;
	String? type;
	String? orgName;
	int? problemCount;
	String? userIds;
	List<TaskDetailOrgProblemListOrganList>? organList;
	List<dynamic>? userIdList;
  
  TaskDetailOrgProblemList();

  factory TaskDetailOrgProblemList.fromJson(Map<String, dynamic> json) => $TaskDetailOrgProblemListFromJson(json);

  Map<String, dynamic> toJson() => $TaskDetailOrgProblemListToJson(this);

  @override
  String toString() {
    return jsonEncode(this);
  }
}

@JsonSerializable()
class TaskDetailOrgProblemListOrganList {

	String? id;
	String? collectId;
	String? areaId;
	String? orgId;
	String? orgName;
	dynamic orderBy;
	String? type;
	int? problemCount;
	dynamic areaOrganList;
  
  TaskDetailOrgProblemListOrganList();

  factory TaskDetailOrgProblemListOrganList.fromJson(Map<String, dynamic> json) => $TaskDetailOrgProblemListOrganListFromJson(json);

  Map<String, dynamic> toJson() => $TaskDetailOrgProblemListOrganListToJson(this);

  @override
  String toString() {
    return jsonEncode(this);
  }
}